from deck import Deck
from hand import Hand
from card import Card
from player import Player
from random import shuffle
from copy import deepcopy


if __name__ == "__main__":

	''' Chinchon '''
	print("CHINCHON")
	hand = Hand(list([Card(1,'🗡'), Card(2,'🗡'), Card(3,'🗡'), Card(4,'🗡'), Card(5,'🗡'), Card(6,'🗡'), Card(7,'🗡')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(3,'🥇'), Card(4,'🥇'), Card(5,'🥇'), Card(6,'🥇'), Card(7,'🥇'), Card(8,'🥇'), Card(9,'🥇')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(5,'🍷'), Card(6,'🍷'), Card(7,'🍷'), Card(8,'🍷'), Card(9,'🍷'), Card(10,'🍷'), Card(11,'🍷')]))

	print(hand.calculate_points())

	''' Straight '''
	print("STRAIGHT")

	hand = Hand(list([Card(7,'🏏'), Card(8,'🏏'), Card(9,'🏏'), Card(10,'🏏'), Card(11,'🏏'), Card(12,'🏏'), Card(1,'🏏')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(7,'🏏'), Card(8,'🏏'), Card(9,'🏏'), Card(10,'🥇'), Card(11,'🥇'), Card(12,'🥇'), Card(1,'🏏')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(3,'🗡'), Card(4,'🗡'), Card(5,'🗡'), Card(3,'🏏'), Card(3,'🥇'), Card(5,'🍷'), Card(6,'🗡')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(1,'🗡'), Card(2,'🗡'), Card(3,'🗡'), Card(3,'🏏'), Card(3,'🍷'), Card(4,'🥇'), Card(5,'🥇')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(1,'🗡'), Card(6,'🗡'), Card(3,'🗡'), Card(3,'🏏'), Card(3,'🥇'), Card(2,'🥇'), Card(5,'🥇')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(3,'🗡'), Card(4,'🗡'), Card(5,'🗡'), Card(5,'🏏'), Card(5,'🥇'), Card(6,'🥇'), Card(7,'🥇')]))

	print(hand.calculate_points())

	''' three of a kind and so on'''
	print("* OF A KIND")

	hand = Hand(list([Card(1,'🗡'), Card(2,'🗡'), Card(3,'🗡'), Card(3,'🏏'), Card(3,'🥇'), Card(5,'🍷'), Card(6,'🍷')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(4,'🏏'), Card(4,'🗡'), Card(3,'🗡'), Card(3,'🏏'), Card(3,'🥇'), Card(3,'🍷'), Card(4,'🍷')]))

	print(hand.calculate_points())

	''' Straight and three of a kind '''
	print("STRAIGHT AND THREE OF A KIND")

	hand = Hand(list([Card(3,'🗡'), Card(4,'🗡'), Card(5,'🗡'), Card(3,'🏏'), Card(3,'🥇'), Card(3,'🍷'), Card(6,'🗡')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(6,'🗡'), Card(3,'🗡'), Card(3,'🏏'), Card(4,'🗡'), Card(5,'🗡'), Card(3,'🥇'), Card(3,'🍷'),]))

	print(hand.calculate_points())

	hand = Hand(list([Card(3,'🏏'), Card(3,'🥇'), Card(3,'🍷'), Card(6,'🗡'), Card(3,'🗡'), Card(4,'🗡'), Card(5,'🗡')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(10,'🗡'), Card(11,'🗡'), Card(12,'🗡'), Card(3,'🏏'), Card(3,'🥇'), Card(3,'🍷'), Card(9,'🗡')]))

	print(hand.calculate_points())
	
	''' All '''
	print("All")

	hand = Hand(list([Card(10,'🗡'), Card(11,'🗡'), Card(1,'🗡'), Card(3,'🏏'), Card(4,'🥇'), Card(3,'🍷'), Card(7,'🗡')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(1,'🗡'), Card(1,'🏏'), Card(2,'🥇'), Card(3,'🏏'), Card(4,'🥇'), Card(3,'🍷'), Card(7,'🗡')]))

	print(hand.calculate_points())

	hand = Hand(list([Card(10,'🗡'), Card(10,'🏏'), Card(11,'🥇'), Card(11,'🏏'), Card(12,'🥇'), Card(12,'🍷'), Card(9,'🗡')]))

	print(hand.calculate_points())
